#ifndef __STRINGOPERATION_H
#define __STRINGOPERATION_H

/*
时间：2018 5 1
作者:latefly
功能：如下


这里要实现的函数有
StringReverse 字符串反转顺序
SplitString
IntString
StringInt
FloatString
StringFloat
DoubleString
StringDouble
StringEqual
StringCopy
HasSymbol 判断是否含有某一个字符串
StringTrim
StringLength

edit version 2018 7 23

*/

/****************************************************************************************************/
//基础的字符判定定义
#define IsCharacter(x) ((x>='a'&&x<='z')||(x>='A'&&x<='Z'))
#define IsNum(x)       (x>='0'&&x<='9')
#define IsSign(x)     ((IsNum(x))||(IsCharacter(x))||(x=='_'))
#define IsDefine(x)     (x=='#')
//#define IsBoundStart(x)      (*(x)=='/'&&(*(x++)=='*'||*(x++)=='/'))
//#define IsBoundEnd(x)          (*(x)=='*'&&*(x++)=='/')
#define Isoperator(x)   (x=='+'||x=='-'||x=='*'||x=='/')
//用于保存结果
#define StringOperationBuffDeep 11
#define StringOperationBuffSize 50


//下面是一些字符串的操作相关的函数

void StringBuffEmpty(void);
char GetStringBuffUsedNum(void);
int StringLength(char *s);
char StringTrim(char sysmbol,char *s);
char StringCopy(char *s1,char *s2);
char StringReverse(char *s);//字符串顺序反转
char SplitString(char split,char *s);//拆分以后 不含拆分符号
char StringEqual(char *s1,char *s2);
char HasSymbol(char symbol,char *s);
int IntString(char *s);//转换结果有问题还未解决
char StringInt(int num);
float FloatString(char *s);
char StringFloat(float number);
double DoubleString(char *s);
char StringDouble(double number);


#endif // __STRINGOPERATION_H
